Generate funkcija

Da primijenite funkciju Generate na redove ili stupce:

 

·          Odaberite redove ili stupce (prisutno mora biti više od jedne dimenzije, u to se uključuju i mjere kojima je podrazumijevano mjesto u stupcima)

·          Odaberite ikonu Organiziraj

·          Odaberite Za svakog iz prethodne dimenzije (Generate) s menija

 

 

Generate funkcija će za svaki element iz prvog seta, prema zadanim kriterijima, izračunati elemente drugog seta i pridružiti ih pripadajućem elementu iz prvog seta.

 

Kada Generate funkcija nije primijenjena                                  

Kada je Generate funkcija primijenjena                                       .

 

Generate funkcija će kombinirat elemente iz dvije ili više dimenzija, na drugačiji način nego funkcija CrossJoin.

Ukoliko niti na jednoj dimenziji nisu primijenjene dodatne funkcije, tada će rezultat CrossJoin i Generate funkcije biti isti.

Isti je slučaj ako će biti primijenjena set funkcija (funkcija na cijeloj osi).

 

Kada da koristimo Generate funkciju?

 

Pretpostavimo da želimo vidjeti:

                                                               Najbolja 3 grada (Cities) po mjeri Store sales, i za svakog od njih

                                                               najbolja 3 proizvoda (Product Names) po mjeri Store Sales.

 

Složimo takav upit:

 

·          Odaberite nivo City iz dimenzije Customers i smjestite u redove

·          Primijenite funkciju TopCount na dimenziju (Dimension function) koristeći ikonu

o         Odaberite ikonu

o         Odaberite TopCount s menija

o         Odaberite dimenziju Customers s podmenija

o         Odaberite mjeru Store Sales

o         Odaberite vrijednost tri (3)

o         Odaberite Primjeni

·          Odaberite nivo Product Name iz dimenzije Product i smjestite ga u redove

·          Primijenite TopCount dimenzijsku funkciju na dimenziju Product koristeći ikonu

o         Odaberite ikonu

o         Odaberite TopCount s menija

o         Odaberite dimenziju Product s podmenija

o         Odaberite mjeru Store Sales

o         Odaberite vrijednost tri (3)

o         Odaberite Primjeni

·          Odaberite ikonu Organiziraj   unutar trake s naslovom koja pripada području redova

·          Odaberite Za svakog iz prethodne dimenzije (Generate)

 

Prije nego što dodamo mjeru, provjerimo da li dizajner izgleda kao na slici:

 

 

Sada dodajte mjeru Store Sales u područje mjera.

Pojavit će se rezultat:

 

 

Kao što možete vidjeti:

Svaki grad ima različita Top 3 Proizvoda.

 

To znači da najprodavaniji proizvodi u sva tri grada nisu isti.

 

Sada uklonite funkciju Generate.

Uklanjanjem funkcije Generate kombiniranje dimenzija Customers i Product bit će izvedeno uz pomoć funkcije CrossJoin.

Da to učinite:

 

·          Odaberite ikonu Organiziraj 

·          Odaberite ponovo Za svakog iz prethodne dimenzije (Generate)

 

Dizajner mora izgledati kao na slici:

 

 

a rezultat je:

 

 

Ovo je malo iznenađenje:

 

·          Pojavila su se samo dva grada iako smo tražili najboljih tri

·          Nadalje, postoje samo dva proizvoda na tablici iako smo i njih tražili tri

·          Dodatnu zbunjenost izaziva činjenica da smo očekivali 9 (3 x 3) redova

Ili barem četiri reda (2x2), a ima ih samo dva

 

Unatoč našim očekivanjima rezultati su ispravni. Razlog leži u slijedećem:

 

                Od naših najboljih tri (3) proizvoda samo dva (2) se prodaju u najbolja tri (3) grada.

 

§          Jedan proizvod (Sunset Silver Cleaner) prodajemo u Everettu.

§          Drugi proizvod (CDR Extra Chunky Peanut Butter) prodajemo u Torranceu

§          U trećem, od naša najbolja tri grada ne prodajemo niti jedan od

naša tri najbolja proizvoda

 

Da otkrijemo treći grad i treći proizvod dozvolite dizajneru da prikaže razne redove i stupce

 

 

Prikazat će se rezultat:

 

 

Sada vidimo sve naše gradove i proizvode. Rezultati postoje samo za njih dvoje.

 

Da razumijemo što se dogodilo trebamo znati kako funkcionira OLAP server.

Evo njegovih kalkulacija i pripadajućeg redoslijeda:

 

·          Nađi najbolja tri (3) grada

·          Nađi najbolja tri (3) proizvoda

·          Koristi CrossJoin funkciju i kombiniraj ta dva dimenzijska seta